package com.waitingresult.collection.list;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;

public class ArrayListDemo {
    public static void main(String[] args) {
        List<String> arrayList = new ArrayList<>();
        //bigDecimalDemo(arrayList);
        arrayList.add(null);
        System.err.println(arrayList);
    }

    private static void bigDecimalDemo(List<String> arrayList) {
        arrayList.add("String1");
        arrayList.add("String2");
        arrayList.add("String3");
        // arrayList.forEach(System.out::println);
        List<BigDecimal> bigDecimalList = new ArrayList<>();
        bigDecimalList.add(BigDecimal.valueOf(1));
        bigDecimalList.add(BigDecimal.valueOf(2));
        bigDecimalList.add(BigDecimal.valueOf(3));
        bigDecimalList.add(BigDecimal.valueOf(4));
        bigDecimalList.add(BigDecimal.valueOf(5));
//        System.err.println(bigDecimalList);
//        BigDecimal surchargeCount = bigDecimalList.stream().reduce(BigDecimal.ZERO, BigDecimal::add);
//       // bigDecimalList.clear();
//        bigDecimalList.add(surchargeCount);
//        System.err.println(bigDecimalList);
//        System.out.println(getMinValue(bigDecimalList));


        String s = bigDecimalList.toString();
        System.err.println("====");
        System.err.println(s);
    }


    public static BigDecimal getMinValue(List<BigDecimal> decimalList) {
        if (decimalList == null || decimalList.isEmpty()) {
            return BigDecimal.ZERO;
        }
        List<BigDecimal> sortList = decimalList.stream().sorted().toList();
        return sortList.get(0);
    }
}
